    Help for LED

Properties            Events

Registration Information

Order Form

Getting Custom Controls Written

Licensing Information

Description

Visual Basic custom control that behaves like an LED.  3-D effects and colors are all user-definable.

File Name

LED2.VBX, LED16.OCX, LED32.OCX

ActiveX / OCX Object Name

Mabry.LED

ActiveX Compatility

VB 4.0 (32-bit) and 5.0

ActiveX Built With

Microsoft Visual C++ v4

ActiveX - Required DLLs

MFC40.DLL (October 6th, 1995 or later)

OLEPRO32.DLL  (October 6th, 1995 or later)

MSVCRT40.DLL  (September 29th, 1995 or later)

VBX Object Type

MabryLED

VBX Compatibility

VB 2.0, 3.0 and 4.0 (16-bit)

VBX Built With

Microsoft Visual C++ v1.5

Distribution Note    When you develop and distribute an application that uses this control, you should install the control file into the user's Windows SYSTEM directory.  The control file has version information built into it.  So, during installation, you should ensure that you are not overwriting a newer version.


LED Properties

Properties that have special meaning for this control or that only apply to this control are marked with an asterisk (*).

*BevelInner Property

*BevelOuter Property

*BevelShapeInner Property

*BevelShapeOuter Property

*BevelWidthInner Property

*BevelWidthOuter Property

*BorderWidth Property

*DisabledColor Property

Enabled Property

Height Property

hWnd Property

Index Property

Left Property

Name Property

*OffColor Property

*OnColor Property

Parent Property

Tag Property

Top Property

*Value Property

*Version Property

Visible Property

Width Property


LED Events

Events that have special meaning for this control or that only apply to this control are marked with an asterisk (*).

Click Event

DblClick Event

DragDrop Event

DragOver Event

MouseDown Event

MouseMove Event

MouseUp Event


Registration Information

CREDITS

LED was written by James Shields.

CONTACT INFORMATION

Orders, inquiries, technical support, questions, comments, etc. can be sent to mabry@mabry.com on the Internet.  Our mailing address/contact information is:

Mabry Software, Inc.

Post Office Box 31926

Seattle, WA  98103-1926

Sales: 1-800-99-MABRY (U.S. Only)

Voice: 206-634-1443

Fax: 206-632-0272 or 206-364-3196

Web: http://www.mabry.com

COST

The price of LED (control only) is US$15 (US$20 for International orders).  The cost of LED and the C/C++ source code (of the control itself) is US$35 (US$40 for International orders).

Prices are subject to change without notice.

DELIVERY METHODS

We can ship this software to you via air mail and/or e-mail.

Air Mail - you will receive disks, a printed manual, and printed receipt if you choose this delivery method.  The costs are:

US$5.00 	US Priority Mail

US$10.00 	AirBorne Express 2nd Day (US deliveries only)

US$15.00 	AirBorne Express Overnight (US deliveries only)

US$45.00 	International AirBorne Express.

E-Mail - We can ship this package to you via e-mail.  You need to have an e-mail account that can accept large file attachments (which includes CompuServe, AOL, and most Internet providers).  If you choose this option, please note: a printed manual is not included.  We will, however, e-mail a receipt to you.

Be sure to include your full mailing address with your order.  Sometimes (on the Internet) the package cannot be e-mailed, so we are forced to send it through the normal mails.

CompuServe E-Mail - CompuServe members can use the software registration forum (GO SWREG) to register this package.  LED's SWREG ID number is 3380.  The source code version's ID number is 3381.  PLEASE NOTE: When you order through SWREG, we send the registered package to your CompuServe account (not your Internet or AOL account) within a few hours.

ORDER / PAYMENT METHODS

You can order this software by phone, fax, e-mail, mail.  For your convenience, an order form has been provided that you can print out directly from this help file.

Please note that orders must include all information that is requested on our order form.   Your shipment WILL BE DELAYED if we have to contact you for additional information (such as phone number, street address, etc.).

You can pay by credit card (VISA, MasterCard, American Express), check (U.S. dollars drawn on a U.S. bank), cash, International Money Order, International Postal Order, Purchase Order (established business entities only - terms net 30), or wire transfer.

WIRE TRANSFER INFORMATION

Here is the information you need regarding our account for a wire funds transfer:

Bank Name: 	SeaFirst - Stone Way Branch

Bank Address: 	3601 Stone Way North

Seattle, WA  98103

Bank Phone: 	206-585-4951

Account Name: 	Mabry Software, Inc.

Routing Number: 	12000024

Account Number: 	16311706

If you are paying with a wire transfer of funds, please add US$12.50 to your order.  This is the fee that SeaFirst Bank charges Mabry Software.  Also, please ADD ANY ADDITIONAL FEES THAT YOUR BANK MAY CHARGE for wire transfer service. If you are paying with a  wire transfer, we must have full payment deposited to our account before we can ship your order.

Copyright © 1994-1997 by Mabry Software, Inc.


Order Form
 LED Order Form

Use the Print Topic... command from the File menu to print this order form.

Mail this 	Mabry Software, Inc.

form to: 	Post Office Box 31926

Seattle, WA  98103-1926

Phone: 206-634-1443

Fax: 206-632-0272 or 206-364-3196

Internet: mabry@mabry.com

Web: www.mabry.com

Where did you get this copy of LED?

____________________________________________________________________

Name: 	____________________________________________________________________

Ship to: 	____________________________________________________________________

____________________________________________________________________

____________________________________________________________________

____________________________________________________________________

Phone: 	_________________________________________________________________

Fax: 	_________________________________________________________________

E-Mail: 	_________________________________________________________________

MC/VISA/AMEX: _________________________________________ exp. __________________

P.O. # (if any): 	____________________ Signature ____________________________________

qty ordered 	____ 	REGISTRATION
$15.00 ($20.00 international).  Check or money order in U.S. currency drawn on a U.S. bank.  Add $5.00 per order for shipping and handling.

qty ordered 	____ 	SOURCE CODE AND REGISTRATION
$35.00 ($40.00 international).  Check or money order in U.S. currency drawn on a U.S. bank.  Add $5.00 per order for shipping and handling.


Bevel Properties Example

In this example, the program will change styles of the bevels used. To try this example, paste the code into the Declarations section of a form that contains two horizontal scroll bars (one for BevelInner, and one for BevelOuter), two labels (which show the properties), and an LED control.  Press F5.  Play with  the scroll bars to see things change.

Sub Form_Load ()
    Me.BackColor = RGB(192, 192, 192)

    HScroll1.Value = 0
    HScroll1.Min = 0
    HScroll1.Max = 3

    HScroll2.Value = 0
    HScroll2.Min = 0
    HScroll2.Max = 3

    Call HScroll1_Change
    Call HScroll2_Change
End Sub

Sub HScroll1_Change ()
    LED1.BevelInner = HScroll2.Value
    Label1.Caption = "BevelInner:" & Format$( HScroll1.Value )
End Sub

Sub HScroll1_Scroll ()
    Call HScroll1_Change
End Sub

Sub HScroll2_Change ()
    LED1.BevelOuter = HScroll3.Value
    Label2.Caption = "BevelOuter:" & Format$( HScroll2.Value )
End Sub

Sub HScroll2_Scroll ()
    Call HScroll2_Change
End Sub


Width Properties Example

In this example, the program will vary the width of bevels. To try this example, paste the code into the Declarations section of a form that contains three horizontal scroll bars, three labels, and an LED control.  Press F5.  Play with the scroll bars to see things change.

Sub Form_Load ()
    HScroll1.Value = LED1.BevelWidthOuter
    HScroll1.Min = 0
    HScroll1.Max = 10

    HScroll2.Value = LED1.BevelWidthInner
    HScroll2.Min = 0
    HScroll2.Max = 10

    HScroll3.Value = LED1.BorderWidth
    HScroll3.Min = 0
    HScroll3.Max = 10

    Call HScroll1_Change
    Call HScroll2_Change
    Call HScroll3_Change
End Sub

Sub HScroll1_Change ()
    LED1.BevelWidthOuter = HScroll1.Value
    Label1.Caption = "BevelWidthOuter:" & Format$( HScroll1.Value )
End Sub

Sub HScroll1_Scroll ()
    Call HScroll1_Change
End Sub

Sub HScroll2_Change ()
    LED1.BevelWidthInner = HScroll3.Value
    Label2.Caption = "BevelWidthInner:" & Format$( HScroll2.Value )
End Sub

Sub HScroll2_Scroll ()
    Call HScroll2_Change
End Sub

Sub HScroll3_Change ()
    LED1.BorderWidth = HScroll3.Value
    Label3.Caption = "BorderWidth:" & Format$( HScroll3.Value )
End Sub

Sub HScroll3_Scroll ()
    Call HScroll3_Change
End Sub


BevelInner Property See Also
See Also

BevelShapeInner Property

BevelOuter Property

BevelShapeOuter Property

BevelWidthInner Property

BevelWidthOuter Property

BorderWidth Property


BevelOuter Property See Also
See Also

BevelInner Property

BevelShapeInner Property

BevelShapeOuter Property

BevelWidthInner Property

BevelWidthOuter Property

BorderWidth Property


BevelShapeInner Property See Also
See Also

BevelInner Property

BevelOuter Property

BevelShapeOuter Property

BevelWidthInner Property

BevelWidthOuter Property

BorderWidth Property


BevelShapeOuter Property See Also
See Also

BevelInner Property

BevelOuter Property

BevelShapeInner Property

BevelWidthInner Property

BevelWidthOuter Property

BorderWidth Property


BevelWidthInner Property See Also
See Also

BevelInner Property

BevelOuter Property

BorderWidth Property


BorderWidth Property See Also
See Also

BevelInner Property

BevelOuter Property


DisabledColor Property See Also
See Also

OffColor Property

OnColor Property


OffColor Property See Also
See Also

DisabledColor Property

OnColor Property

Value Property


OnColor Property See Also
See Also

DisabledColor Property

OffColor Property

Value Property


Value Property See Also
See Also

DisabledColor Property

OffColor Property

OnColor Property


BevelInner Property

See Also            Bevel Properties Example

Description

Determines the 3-D style of the border immediately surrounding the LED area.

Syntax

object.BevelInner [= integer ]

The syntax of the BevelInner property has these parts:

Part	   	Description

object	An LED control.

integer	An integer that determines the bevel style.

Remarks

The value of this property determines the style of the LED's border. This property may be one of five values:

Constant	   	Value	   	Description

msBevelNone	0	No frame

msBevelRaised	1	Raised frame (3-D)

msBevelInset	2	Inset frame (3-D)

msBevelLowered	3	Lowered frame (3-D)

msBevelSolid	4	Solid frame

Data Type

Integer (enumerated)


BevelOuter Property

See Also            Bevel Properties Example

Description

Determines the 3-D style of the border (if any) surrounding the control.

Syntax

object.BevelOuter [= integer ]

The syntax of the BevelOuter property has these parts:

Part	   	Description

object	An LED control.

integer	An integer that determines the bevel style.

Remarks

The value of this property determines the style of the control's border. This property may be one of five values:

Constant	   	Value	   	Description

msBevelNone	0	No frame

msBevelRaised	1	Raised frame (3-D)

msBevelInset	2	Inset frame (3-D)

msBevelLowered	3	Lowered frame (3-D)

msBevelSolid	4	Solid frame

Data Type

Integer (enumerated)


BevelShapeInner Property

See Also

Description

Determines the shape of the 3-D style of the border immediately surrounding the LED area.

Syntax

object.BevelShapeInner [= integer ]

The syntax of the BevelShapeInner property has these parts:

Part	   	Description

object	An LED control.

integer	An integer that determines the shape of the inner bevel.

Remarks

The value of this property determines the shape of the LED's border. If the BevelShapeOuter property is set to 1 (Ellipse), this property is automatically set to 1.

This property may be one of two values:

Constant	   	Value	   	Description

msShapeRectangle	0	Rectangle

msShapeEllipse	1	Ellipse

Data Type

Integer (enumerated)


BevelShapeOuter Property

See Also

Description

Determines the shape of the 3-D style of the border surrounding the control.

Syntax

object.BevelShapeOuter [= integer ]

The syntax of the BevelShapeOuter property has these parts:

Part	   	Description

object	An LED control.

integer	An integer that determines the shape of the outer bevel.

Remarks

The value of this property determines the shape of the control's border. If the BevelShapeInner property is set to 0 (Rectangle), this property is automatically set to 0.

This property may be one of two values:

Constant	   	Value	   	Description

msShapeRectangle	0	Rectangle

msShapeEllipse	1	Ellipse

Data Type

Integer (enumerated)


BevelWidthInner and BevelWidthOuter Properties

See Also            Width Properties Example

Description

Determines the width of the inner and outer borders (bevels).

Syntax

object.BevelWidthInner [= integer ]
object.BevelWidthOuter [= integer ]

The syntax of the BevelWidthInner and BevelWidthOuter properties has these parts:

Part	   	Description

object	An LED control.

integer	An integer that specifies the width of a bevel, in pixels.

Remarks

These properties determine the width of the inner border (if any, see the BevelInner property) and the outer border (if any, see the BevelOuter property).  This property is always measured in pixels.

Data Type

Integer


BorderWidth Property

See Also            Width Properties Example

Description

Determines the distance between the inner border and the outer border.

Syntax

object.BorderWidth [= integer ]

The syntax of the BorderWidth property has these parts:

Part	   	Description

object	An LED control.

integer	An integer that specifies the gap between the inner and outer bevels, in pixels.

Remarks

The value of this property determines the distance between the inner border (if any, see the BevelInner property) and the outer border (if any, see the BevelOuter property).  This property is always measured in pixels.

Data Type

Integer


DisabledColor Property

See Also

Description

Determines the color of the LED when the control is disabled.

Syntax

object.DisabledColor [= color ]

The syntax of the DisabledColor property has these parts:

Part	   	Description

object	An LED control.

color	A color expression that determines the color of the LED when disabled.

Remarks

This property determines what color the LED is when the control is disabled.

Data Type

Color


OffColor Property

See Also

Description

Sets the color of the LED when the control is off.

Syntax

object.OffColor [= color ]

The syntax of the OffColor property has these parts:

Part	   	Description

object	An LED control.

color	A color expression that determines the color of the LED when it is off.

Remarks

This property determines what color the LED is when the control is off (i.e., Value = False).

Data Type

Color


OnColor Property

See Also

Description

Sets the color of the LED when the control is on.

Syntax

object.OnColor [= color ]

The syntax of the OnColor property has these parts:

Part	   	Description

object	An LED control.

color	A color expression that determines the color of the LED when it is on.

Remarks

This property determines what color the LED is when the control is on (i.e., Value = True).

Data Type

Color


Value Property

See Also

Description

Turns the LED on or off.

Syntax

object.Value [= boolean ]

The syntax of the Value property has these parts:

Part	   	Description

object	An LED control.

boolean	A boolean flag that determines the state of the LED (on or off).

Remarks

This property determines whether the LED is on or off.  If the control is disabled, the LED is painted using the DisabledColor property.  If Value is True, the LED is painted using the OnColor property.  And, if Value is False, the LED is painted using the OffColor property.

This property is the default value of the control.

Data Type

Integer (boolean)


Version Property

Description

Returns the version of the control.

Syntax

object.Version

The syntax of the Version property has these parts:

Part	   	Description

object	An LED control.

Remarks

This property holds the current version of the control.  It is read-only and available at both design-time and run-time.

Data Type

String


Getting Custom Controls Written

If you or your organization would like to have custom controls written, you can contact us at the following:

Mabry Software, Inc.

Post Office Box 31926

Seattle, WA  98103-1926

Phone: 206-634-1443

Fax: 206-632-0272 or 206-364-3196

Internet: mabry@mabry.com

You can also contact Zane Thomas.  He can be reached at:

Zane Thomas

Post Office Box 121

Indianola, WA  98342

Internet: zane@mabry.com


Licensing Information

Legalese Version

Mabry Software grants a license to use the enclosed software to the original purchaser.  Copies may be made for back-up purposes only.  Copies made for any other purpose are expressly prohibited, and adherence to this requirement is the sole responsibility of the purchaser.

Customer written executable applications containing embedded Mabry products may be freely distributed, without royalty payments to Mabry Software, provided that such distributed Mabry product is bound into these applications in such a way so as to prohibit separate use in design mode, and that such Mabry product is distributed only in conjunction with the customers own software product.  The Mabry Software product may not be distributed by itself in any form.

Neither source code for Mabry Software products nor modified source code for Mabry Software products may be distributed under any circumstances, nor may you distribute .OBJ, .LIB, etc. files that contain our routines. This control may be used as a constituent control only if the compound control thus created is distributed with and as an integral part of an application.  Permission to use this control as a constituent control does not grant a right to distribute the license (LIC) file or any other file other than the control executable itself. This license may be transferred to a third party only if all existing copies of the software and its documentation are also transferred.

This product is licensed for use by only one developer at a time.  Mabry Software expressly prohibits installing this product on more than one computer if there is any chance that both copies will be used simultaneously.  This restriction also extends to installation on a network server, if more than one workstation will be accessing the product.  All developers working on a project which includes a Mabry Software product, even though not working directly with the Mabry product, are required to purchase a license for that Mabry product.

This software is provided as is.  Mabry Software makes no warranty, expressed or implied, with regard to the software.  All implied warranties, including the warranties of merchantability and fitness for a particular use, are hereby excluded.

MABRY SOFTWARE'S LIABILITY IS LIMITED TO THE PURCHASE PRICE.  Under no circumstances shall Mabry Software or the authors of this product be liable for any incidental or consequential damages, nor for any damages in excess of the original purchase price.

To be eligible for free technical support by telephone, the Internet, CompuServe, etc. and to ensure that you are notified of any future updates, please complete the enclosed registration card and return it to Mabry Software.

English Version

We require that you purchase one copy of a control per developer on a project.  If this is met, you may distribute the control with your application royalty free.  You may never distribute the LIC file.  You may not change the product in any way that removes or changes the requirement of a license file.

We encourage the use of our controls as constituent controls when the compound controls you create are an integral part of your application.  But we don't allow distribution of our controls as constituents of other controls when the compound control is not part of an application.  The reason we need to have this restriction is that without it someone might decide to use our control as a constituent, add some trivial (or even non-trivial) enhancements and then sell the compound control.  Obviously there would be little difference between that and just plain reselling our control.

If you have purchased the source code, you may not re-distribute the source code either (nor may you copy it into your own project).  Mabry Software retains the copyright to the source code.

Your license is transferable.  The original purchaser of the product must make the transfer request.  Contact us for further information.

The sample versions of our products are intended for evaluation purposes only.  You may not use the sample version to develop completed applications.